package com.design.command;

/**
 * @author leali
 * @title: Invoker
 * @projectName design
 * @description: 请求发送者类Invoker将针对CommandQueue编程
 * @date 2022/1/3 17:09
 */
public class Invoker {
    /**
     * 维持一个CommandQueue对象的引用
     */
    private CommandQueue commandQueue;

    /**
     * 构造注入
     * @param commandQueue 队列
     */
    public Invoker(CommandQueue commandQueue) {
        this.commandQueue = commandQueue;
    }

    /**
     * 设值注入
     * @param commandQueue 队列
     */
    public void setCommandQueue(CommandQueue commandQueue) {
        this.commandQueue = commandQueue;
    }

    public void call() {
        commandQueue.execute();
    }
}
